1. Field of the Invention
The present invention relates to a printing system particularly composed of a data processing apparatus such as a personal computer connected to a printer, and relates to the control of job processing of a data processing apparatus for collate-printing a document from an application in plural set units.
2. Related Background Art
FIG. 12 is a block diagram for explanation of a data processing system in a conventional printing system. For example, the method of connecting a printing device 1500 such as a printer, etc. to a host computer 3000 directly through an I/I is substantially the same as the method of connecting a printing system through a network.
In FIG. 12, an application 201, a graphic engine 202, a printer driver 203, and a system spooler 204 are program modules loaded into RAM and executed by a module which uses an OS and its modules when they are provided as files stored in external memory. The application 201 and the printer driver 203 can be added to the FD of external memory, CD/ROM not shown in the attached drawings, or the HD of the external disk through a network not shown in the attached drawings.
The application 201 stored in external memory is loaded into the RAM and executed. When a printing process is performed on the printing device 1500 from the application 201, printing data is output (drawn) using the graphic engine 202 which is also loaded into the RAM and executable.
The graphic engine 202 loads the printer driver 203 provided for each printing device from external memory to the RAM, and the output of the application 201 is set in the printer driver 203.
A GDI (graphic device interface) function received from the application 201 is converted into a DDI (device driver interface) function, and the DDI function is output to the printer driver 203. The printer driver 203 converts the DDI function received from the graphic engine 202 into a control command recognizable by a printer, for example, a PDL (page description language). The converted printer control command is output as printing data to the printing device 1500 through the system spooler 204 loaded into the RAM by the OS, and also through the interface 21.
A printing process requested by a user is called a job. A document which a user requests to print is normally formed by one or more pages. The drawing information about the configuration of a page is referred to as a logical page. On a printing device, the following functions can be applied to a printing result of a logical page.
Duplex printing capability is the function of printing logical pages forming a document which a user requests to print by assigning each logical page to one of obverse and reverse pages of one physical page.
N-up printing capability is the function of printing two or more logical pages simultaneously arranged on one physical page.
A printing result on one storage medium using the above-mentioned function is referred to as a physical page. One job is normally formed by one or more physical pages.
In the explanation below, notations 1 to 5 are used to express the relationship between a logical page forming a display which a user requests to print, a physical page which is a printing result, and a job.
Notation 1
The contents of a logical page to be printed are expressed by a numeral or a variable.
For example, the first logical page →1, the second logical page →2, and the N-th logical page →N are expressed.
Notation 2
One side of a printed physical page is expressed by enclosure with ( ) and ″.
For example, when the first page is printed as a physical page, it is express by →(1), and when the first and second pages are N-up-printed, it is expressed by →(1, 2).
Notation 3
The reverse page of a printed physical page is expressed by adding ″.
For example, when the second page is printed as a reverse page, it is expressed by →(2)″.
Notation 4
A printed physical page is expressed by enclosure with < and >.
For example, when the first page is printed as a face and the second page is printed as a reverse, the physical page is expressed by →<(1), (2)″>.
Notation 5
A job is expressed by enclosure with [ ], ″, and pages are arranged in an ascending order.
For example, a simplex printing job on a document formed by three logical pages is expressed by →[<1>, <2>, <3>], a 2-up simplex printing job on a document formed by three logical pages is expressed by →[(1, 2)>, <3>], and a 2-up duplex printing job on a document formed by three logical pages is expressed by →[(1, 2)>, <3>″].
When a document is printed in plural set units, it can be printed in 2 set units or can be twice printed continuously. The plural set printing in set units is called collate-printing.
For example, in the 2-set printing of a document formed by three logical pages, collate OFF→[<(1)>, <(1)>, <(2)>, <(2)>, <(3)>, <(3)>] and collate ON→[<(1)>, <(2)>, <(3)>, <(1)>, <(2)>, <(3)>] are expressed.
To realize the above-mentioned collate-printing on a printing system, it is necessary to temporarily store all logical pages forming a document, and regenerate them in set units. Some printing systems do not include storage means for storing a document for realizing the collate-printing.
Therefore, in some applications, the collate-printing can be specified using a user interface (UI) of an application by printing a document plural times in set units, thereby realizing the printing.
FIGS. 13 to 15 show an example of collate-printing for a job in the printing system, and an example of an application for printing a document plural times.
FIG. 13 shows the configuration of a logical page of a job, and FIG. 14 shows an example of a two-unit collate-printing in an application for a document formed by three logical pages shown in FIG. 13. FIG. 15 shows an example of 2-unit collate-printing in an application for a document formed by three logical pages, and duplex printing on a printing device.
In the case of collate ON→[<(1)>, <(2)>, <(3)>, <(1)>, <(2)>, <(3)>], no segment of a set unit is detected in the collate-printing on the printing system according to the above-mentioned application. Therefore, if the function of printing a plurality of logical pages on one page in the duplex printing, N-up printing, etc. is used, an unexpected printing result is output as follows.
That is, when a document formed by three logical pages is printed in the 2-unit collate-printing in an application and in the duplex printing on a printing device, the result indicated by the jobs 9-2 and 9-3 shown in FIG. 14 is output.
The user-requested job 9-2 shown in FIG. 14 is [<(1), (2)″>, <(3)>, <(1), (2)″>, <(3)>], but the output result shown by the job 9-3 in the above-mentioned application is expressed by [<(1), (2)″>, <(3), (1)″>, <(2), (3)″>].
Additionally, for example, when the document formed by three logical pages is printed in the 2-unit collate-printing by an application and in the 4-up printing on a printing device, the user-requested job 9-4 shown in FIG. 15 is [<(1, 2, 3)>, <(1, 2, 3)>]. However, in the above-mentioned application, the output result of the job 9-5 is expressed by [<(1, 2, 3, 1)>, <(2, 3)>].
As described above, in the conventional printing system, a segment of a set unit cannot be detected when an application continuously prints a document in set units, and uniquely prints with the number of sets specified for collate-printing.
Therefore, when the function of printing a plurality of logical pages on one output medium of N-up printing, duplex printing, etc. is applied on this document, a segment of a set unit cannot be detected, thereby resulting in an unexpected printing result (refer to the job 9-3 shown in FIG. 14 or the job 9-5 shown in FIG. 15).